package bancosys.tec.datadigester.processor;

import java.util.List;

/**
 * Fábrica de Processor.
 * 
 * @author Marco
 */
public interface ProcessorFactory {

    /**
     * Constrói uma instância de Processor para o arquivo informado.
     * 
     * @param fileCode código do arquivo.
     * @return instância de Processor para o arquivo informado.
     */
    Processor createProcessor(String fileCode);

    /**
     * Lists all available processors names
     * 
     * @return {@link List} of {@link String}
     */
    List<? extends String> getAvailableProcessors();
}
